/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package entity;

import java.io.Serializable;
import java.math.BigDecimal;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;

/**
 *
 * @author Emanuel
 */
@Entity
@Table(name = "pagamento_servicos")
@NamedQueries({@NamedQuery(name = "PagamentoServicos.findAll", query = "SELECT p FROM PagamentoServicos p"), @NamedQuery(name = "PagamentoServicos.findByIdPAGAMENTOSERVICOS", query = "SELECT p FROM PagamentoServicos p WHERE p.idPAGAMENTOSERVICOS = :idPAGAMENTOSERVICOS"), @NamedQuery(name = "PagamentoServicos.findByMontante", query = "SELECT p FROM PagamentoServicos p WHERE p.montante = :montante"), @NamedQuery(name = "PagamentoServicos.findByEntidade", query = "SELECT p FROM PagamentoServicos p WHERE p.entidade = :entidade"), @NamedQuery(name = "PagamentoServicos.findByReferencia", query = "SELECT p FROM PagamentoServicos p WHERE p.referencia = :referencia"), @NamedQuery(name = "PagamentoServicos.findByNib", query = "SELECT p FROM PagamentoServicos p WHERE p.nib = :nib")})
public class PagamentoServicos implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Basic(optional = false)
    @Column(name = "idPAGAMENTO_SERVICOS")
    private Integer idPAGAMENTOSERVICOS;
    @Basic(optional = false)
    @Column(name = "MONTANTE")
    private BigDecimal montante;
    @Basic(optional = false)
    @Column(name = "ENTIDADE")
    private int entidade;
    @Basic(optional = false)
    @Column(name = "REFERENCIA")
    private int referencia;
    @Basic(optional = false)
    @Column(name = "NIB")
    private String nib;

    public PagamentoServicos() {
    }

    public PagamentoServicos(Integer idPAGAMENTOSERVICOS) {
        this.idPAGAMENTOSERVICOS = idPAGAMENTOSERVICOS;
    }

    public PagamentoServicos(Integer idPAGAMENTOSERVICOS, BigDecimal montante, int entidade, int referencia, String nib) {
        this.idPAGAMENTOSERVICOS = idPAGAMENTOSERVICOS;
        this.montante = montante;
        this.entidade = entidade;
        this.referencia = referencia;
        this.nib = nib;
    }

    public Integer getIdPAGAMENTOSERVICOS() {
        return idPAGAMENTOSERVICOS;
    }

    public void setIdPAGAMENTOSERVICOS(Integer idPAGAMENTOSERVICOS) {
        this.idPAGAMENTOSERVICOS = idPAGAMENTOSERVICOS;
    }

    public BigDecimal getMontante() {
        return montante;
    }

    public void setMontante(BigDecimal montante) {
        this.montante = montante;
    }

    public int getEntidade() {
        return entidade;
    }

    public void setEntidade(int entidade) {
        this.entidade = entidade;
    }

    public int getReferencia() {
        return referencia;
    }

    public void setReferencia(int referencia) {
        this.referencia = referencia;
    }

    public String getNib() {
        return nib;
    }

    public void setNib(String nib) {
        this.nib = nib;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (idPAGAMENTOSERVICOS != null ? idPAGAMENTOSERVICOS.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof PagamentoServicos)) {
            return false;
        }
        PagamentoServicos other = (PagamentoServicos) object;
        if ((this.idPAGAMENTOSERVICOS == null && other.idPAGAMENTOSERVICOS != null) || (this.idPAGAMENTOSERVICOS != null && !this.idPAGAMENTOSERVICOS.equals(other.idPAGAMENTOSERVICOS))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "entity.PagamentoServicos[idPAGAMENTOSERVICOS=" + idPAGAMENTOSERVICOS + "]";
    }

}
